home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / sgdynamo_path.nasl < prev    next >
Text File  |  2005-03-31  |  2KB  |  87 lines

  1. #
  2. # This script written by Scott Shebby (12/2003) 
  3. #
  4. # See the Nessus Scripts License for details
  5. #
  6. # Ref:
  7. # From: "Ruso, Anthony" <aruso@positron.qc.ca>
  8. # To: Penetration Testers <PEN-TEST@SECURITYFOCUS.COM>
  9. # Subject: Sgdynamo.exe Script -- Path Disclosure
  10. # Date: Wed, 16 May 2001 11:55:32 -0400
  11. #
  12. #
  13. # Changes by rd :
  14. #    - Description
  15. #    - Support for multiple CGI directories
  16. #    - HTTP KeepAlive support
  17. #    - egrep() instead of eregmatch()
  18. #
  19.  
  20.  
  21. if(description)
  22. {
  23.  script_id(11954);
  24.  script_version ("$Revision: 1.4 $");
  25.  name["english"] = "sgdynamo_path";
  26.  script_name(english:name["english"]);
  27.  desc["english"] = "
  28. The CGI 'sgdynamo.exe' can be tricked into giving the physical path to the 
  29. remote web root.
  30.  
  31. This information may be useful to an attacker who can use it to make better
  32. attacks against the remote server.
  33.  
  34. Solution : None at this time
  35. Risk factor : Low";
  36.  script_description(english:desc["english"]);
  37.  
  38.  summary["english"] = "sgdynamo.exe Path Disclosure";
  39.  script_summary(english:summary["english"]);
  40.  
  41.  script_category(ACT_GATHER_INFO);
  42.  
  43.  script_copyright(english:"This script is Copyright (C) 2003 Scott Shebby");
  44.  family["english"] = "CGI abuses";
  45.  family["francais"] = "Abus de CGI";
  46.  script_family(english:family["english"], francais:family["francais"]);
  47.  script_dependencie("find_service.nes", "http_version.nasl");
  48.  script_require_ports("Services/www", 80);
  49.  exit(0);
  50. }
  51.  
  52. #
  53. # The script code starts here
  54. #
  55.  
  56. include("http_func.inc");
  57. include("http_keepalive.inc");
  58.  
  59.  
  60. port = get_http_port(default:80);
  61.  
  62. if(!get_port_state(port))exit(0);
  63.  
  64. foreach dir (cgi_dirs())
  65. {
  66.  url = dir + "/sgdynamo.exe?HTNAME=sgdynamo.exe";
  67.  req = http_get(item:url, port:port);
  68.  resp = http_keepalive_send_recv(port:port, data:req);
  69.  if ( resp == NULL ) exit(0);
  70.  path = egrep(pattern:"[aA-zZ]:\\.*sgdynamo\.exe", string:resp);
  71.  if (path) {
  72.    path = ereg_replace(string:path, pattern:".*([aA-zZ]:\\.*sgdynamo\.exe).*", replace:"\1");
  73.    report = 
  74. "The CGI 'cgdynamo.exe' can be tricked into giving the physical path to the 
  75. remote web root.
  76.  
  77. We determined that the remote web path is : " + path + "
  78. This information may be useful to an attacker who can use it to make better
  79. attacks against the remote server.
  80.  
  81. Solution : None at this time
  82. Risk factor : Low";
  83.    security_warning(port:port, data:report);
  84.    exit(0);
  85.   }
  86. }
  87.